package com.atguigu.gulimall.product;

import org.mybatis.spring.annotation.MapperScan;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
import org.springframework.context.annotation.ComponentScan;

/**
 * 1.整合Mybatis-Plus
 *      1) 导入依赖
 *      <dependency>
*             <groupId>com.baomidou</groupId>
*             <artifactId>mybatis-plus-boot-starter</artifactId>
*             <version>3.2.0</version>
 *      </dependency>
 *      2) 配置
 *          1. 配置数据源
 *              -- 导入 mysql 数据库的驱动
 *              -- 在yml中配置数据源相关信息
 *          2. 配置Mybatis-Plus
 *              -- 在启动类上使用@MapperScan
 *              -- 告诉Mybatis-Plus, sql映射文件位置
 * 2.如何使用Mybatis-Plus带的逻辑删除
 *      1) 配置全局的逻辑删除规则
 *      mybatis-plus:
 *        global-config:
 *          db-config:
 *             logic-delete-field: flag  # 全局逻辑删除的实体字段名(since 3.3.0,配置后可以忽略不配置步骤2)
 *             logic-delete-value: 1 # 逻辑已删除值(默认为 1)
 *             logic-not-delete-value: 0 # 逻辑未删除值(默认为 0)
 *      2) 实体类字段上加上@TableLogic注解
 *          @TableLogic
 *          private Integer deleted;
 */
@SpringBootApplication
@MapperScan("com.atguigu.gulimall.product.dao")
@EnableDiscoveryClient
public class GulimallProductApplication {

    public static void main(String[] args) {
        SpringApplication.run(GulimallProductApplication.class, args);
    }

}
